Method and apparatus to control velocity of vehicle

ABSTRACT

A method to control a velocity of a vehicle includes: extracting an end point of a road region from an input image; measuring a visibility distance between an end point location corresponding to the end point and a location of a vehicle; and controlling the velocity of the vehicle based on the measured visibility distance.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application claims the benefit under 35 USC § 119(a) of KoreanPatent Application No. 10-2016-0160673 filed on Nov. 29, 2016, in theKorean Intellectual Property Office, the entire disclosure of which isincorporated herein by reference for all purposes.

BACKGROUND 1. Field

The following description relates to technology that controls a velocityof a vehicle.

2. Description of Related Art

Automatic driving includes automatic performance of a variety ofoperations required while driving a vehicle. For example, a host vehiclethat performs automatic driving travels on a road for itself without adriver controlling a steering wheel, an accelerator, and a brake.Various technologies for automatic driving are performed throughvicinity image information obtained from a vehicle. In particular,although a lane for automatic driving is detected from an image of afront view captured from the vehicle, a restricted range of informationis collected by the vehicle due to a terrain in a vicinity of thevehicle, bad weather such as snow, rain, and fog, and a road shape.

SUMMARY

This Summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter, nor is it intended tobe used as an aid in determining the scope of the claimed subjectmatter.

In one general aspect, a method to control a velocity of a vehicleincludes: extracting an end point of a road region from an input image;measuring a visibility distance between an end point locationcorresponding to the end point and a location of the vehicle; andcontrolling the velocity of the vehicle based on the measured visibilitydistance.

The extracting of the end point of the road region may includeidentifying lane lines from the input image, extracting a driving laneregion from the road region based on the lane lines, and extracting, asthe end point of the road region, an end point of the extracted drivinglane region.

The extracting of the end point of the road region may includeidentifying the road region from the input image, and extracting, as theend point, a pixel at a farthest distance from a side of the vehicle inthe input image, among pixels included in the road region.

The extracting of the end point of the road region may includeidentifying the road region and a center line on the road region fromthe input image, and extracting, as the end point, a pixel at a farthestdistance from a side of the vehicle in the input image, among pixelsincluded in the center line.

The method may further include: acquiring a first image included in theinput image using a first camera; and acquiring a second image includedin the input image using a second camera spaced apart from the firstcamera, wherein the measuring of the visibility distance includesdetermining a pixel disparity corresponding to an end point of eitherone of the first image and the second image, and measuring thevisibility distance based on the pixel disparity.

The determining of the pixel disparity may include extracting a pixeldisparity map from the first image and the second image using a pixeldisparity model that is trained to output a training display map from atraining image, and selecting a pixel disparity corresponding to the endpoint of the one of the first image and the second image in the pixeldisparity map.

The measuring of the visibility distance based on the pixel disparitymay include measuring the visibility distance further based on abaseline distance between the first camera and the second camera, and afocal length of the first camera and the second camera.

The determining of the pixel disparity may include determining endpoints from the first image and determining end points from the secondimage, calculating disparities between the end points of the first imageand the end points of the second image, respectively, and determining adisparity statistical value of the calculated disparities to be thepixel disparity.

The extracting of the end point of the road region may includedetermining an end point of the first image from a road region of thefirst image, estimating a pixel corresponding to the end point of thefirst image from the second image, and determining the estimated pixelas an end point of the second image.

The measuring of the visibility distance may include generating avicinity distance map with respect to a vicinity of the vehicle using alight imaging, detection, and ranging (LiDAR) sensor, calibrating thevicinity distance map to the input image, and selecting a distancecorresponding to the end point of the input image as the visibilitydistance, from the vicinity distance map.

The controlling of the velocity of the vehicle may include determining astopping distance for the vehicle based on the visibility distance,calculating a maximum velocity of the vehicle based on the stoppingdistance, and adjusting the velocity of the vehicle to be less than orequal to the maximum velocity.

The calculating of the maximum velocity of the vehicle may includecalculating the maximum velocity of the vehicle further based on alength of the vehicle.

The method may further include adjusting either one or both of thedetermined stopping distance and the calculated maximum velocity inresponse to reception of a user input.

The calculating of the maximum velocity of the vehicle may includeobtaining maximum velocity information corresponding to the location ofthe vehicle based on the location of the vehicle, and calculating themaximum velocity of the vehicle further based on the maximum velocityinformation.

The adjusting of the velocity of the vehicle may include adjusting thevelocity of the vehicle to be the maximum velocity in response to noobject being detected on the road region.

The method may further include determining a statistical value ofdistances between respective end point locations corresponding to endpoints and the location of the vehicle to be the visibility distance, inresponse to the end points being extracted.

The controlling of the velocity of the vehicle may include determiningan obtainable stopping distance based on the visibility distance and aline shape of a driving road of the vehicle, and calculating a maximumvelocity of the vehicle based on the stopping distance.

The controlling of the velocity of the vehicle may include excluding areaction distance with respect to the vehicle, and determining a maximumvelocity of the vehicle based on a braking distance.

A non-transitory computer-readable storage medium may store instructionsthat, when executed by a processor, cause the processor to perform themethod.

In another general aspect, an apparatus to control a velocity of avehicle includes: a sensor configured to acquire an input image; and aprocessor configured to extract an end point of a road region from theinput image, to determine a visibility distance between an end pointlocation corresponding to the end point and a location of the vehicle,and to control the velocity of the vehicle based on the determinedvisibility distance.

The processor may be configured to extract the end point of the roadregion by determining a driving lane region from the road region and toextract, as the end point of the road region, an end point of thedetermined driving lane region.

The processor may be configured to extract the end point of the roadregion by extracting, as the end point, a pixel at a farthest distancefrom a side of the vehicle in the input image, among pixels included inthe road region.

The sensor may include a first camera configured to acquire a firstimage included in the input image, and a second camera spaced apart fromthe first camera and configured to acquire a second image included inthe input image. The processor may be configured to determine thevisibility distance by determining a pixel disparity corresponding to anend point of one of the first image and the second image.

In another general aspect, a method to control a velocity of a vehicleincludes: determining a road region from an input image; determining avisibility distance along the road region; and controlling the velocityof the vehicle based on the determined visibility distance.

The method may further include: extracting a driving lane region of theroad region; and extracting an end point of the extracted driving laneregion, wherein the determining of the visibility distance includesdetermining the visibility distance to be a distance between a locationof the vehicle and an end point location corresponding to the end point.

The method may further include: determining a center line of the roadregion; and extracting, as an end point, a pixel at a farthest distancefrom a side of the vehicle in the input image, among pixels included inthe center line, wherein the determining of the visibility distanceincludes determining the visibility distance to be a distance between alocation of the vehicle and an end point location corresponding to theend point.

The controlling of the velocity of the vehicle may include determining astopping distance for the vehicle based on the visibility distance,calculating a maximum velocity of the vehicle based on the stoppingdistance, and controlling the velocity of the vehicle based on themaximum velocity.

In another general aspect, an apparatus to control a velocity of avehicle includes: a camera configured to acquire an input image; and aprocessor configured to determine a road region from the input image, todetermine a visibility distance along the road region based on the inputimage, and to control the velocity of the vehicle based on thedetermined visibility distance.

The processor may be further configured to control the velocity of thevehicle based on the determined visibility distance, in response to noobject being detected in the road region.

The camera may include a first camera configured to acquire a firstimage included in the input image, and a second camera spaced apart fromthe first camera and configured to acquire a second image included inthe input image. The processor may be configured to determine thevisibility distance by determining a pixel disparity corresponding to anend point of one of the first image and the second image.

The apparatus may further include: a light imaging, detection, andranging (LiDAR) sensor configured to generate a vicinity distance mapwith respect to a vicinity of the vehicle, wherein the processor isfurther configured to extract an end point of the road region from theinput image, calibrate the vicinity distance map to the input image, andselect a distance corresponding to a distance between a location of thevehicle and a location corresponding to the end point of the road regionas the visibility distance, from the vicinity distance map.

Other features and aspects will be apparent from the following detaileddescription, the drawings, and the claims.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a flowchart illustrating an example of a vehicle velocitycontrol method, according to an embodiment.

FIGS. 2, 3, 4 and 5 illustrate segmenting an input image into regions,according to embodiments.

FIG. 6 illustrates calculating a pixel disparity map to measure avisibility distance, according to an embodiment.

FIG. 7 illustrates measuring a visibility distance using a pixeldisparity map, according to an embodiment.

FIG. 8 illustrates measuring a distance using a light imaging,detection, and ranging (LiDAR) sensor, according to an embodiment.

FIG. 9 illustrates calculating a stopping distance, according to anembodiment.

FIGS. 10 and 11 illustrate visibility distances on curved roads withobstacles, according to embodiments.

FIGS. 12 and 13 illustrate visibility distances on sloping roads,according to embodiments.

FIG. 14 illustrates a visibility distance on a curved road without anobstacle, according to an embodiment.

FIGS. 15 and 16 illustrate a visibility distance with respect to weatherconditions, according to an embodiment.

FIG. 17 illustrates a visibility distance on a sloping road, accordingto an embodiment.

FIGS. 18 and 19 illustrate a visibility distance when entering tunnels,according to an embodiment.

FIGS. 20, 21 and 22 are block diagrams illustrating vehicle velocitycontrol apparatuses, according to embodiments.

Throughout the drawings and the detailed description, unless otherwisedescribed or provided, the same drawing reference numerals will beunderstood to refer to the same elements, features, and structures. Thedrawings may not be to scale, and the relative size, proportions, anddepiction of elements in the drawings may be exaggerated for clarity,illustration, and convenience.

DETAILED DESCRIPTION

The following detailed description is provided to assist the reader ingaining a comprehensive understanding of the methods, apparatuses,and/or systems described herein. However, various changes,modifications, and equivalents of the methods, apparatuses, and/orsystems described herein will be apparent after an understanding of thedisclosure of this application. For example, the sequences of operationsdescribed herein are merely examples, and are not limited to those setforth herein, but may be changed as will be apparent after anunderstanding of the disclosure of this application, with the exceptionof operations necessarily occurring in a certain order. Also,descriptions of features that are known in the art may be omitted forincreased clarity and conciseness.

The features described herein may be embodied in different forms, andare not to be construed as being limited to the examples describedherein. Rather, the examples described herein have been provided merelyto illustrate some of the many possible ways of implementing themethods, apparatuses, and/or systems described herein that will beapparent after an understanding of the disclosure of this application.

Various alterations and modifications may be made to the examples. Here,the examples are not construed as limited to the disclosure and shouldbe understood to include all changes, equivalents, and replacementswithin the idea and the technical scope of the disclosure.

As used herein, the term “and/or” includes any one and any combinationof any two or more of the associated listed items.

Although terms such as “first,” “second,” and “third” may be used hereinto describe various members, components, regions, layers, or sections,these members, components, regions, layers, or sections are not to belimited by these terms. Rather, these terms are only used to distinguishone member, component, region, layer, or section from another member,component, region, layer, or section. Thus, a first member, component,region, layer, or section referred to in examples described herein mayalso be referred to as a second member, component, region, layer, orsection without departing from the teachings of the examples.

The terminology used herein is for describing various examples only, andis not to be used to limit the disclosure. The articles “a,” “an,” and“the” are intended to include the plural forms as well, unless thecontext clearly indicates otherwise. The terms “comprises,” “includes,”and “has” specify the presence of stated features, numbers, operations,members, elements, and/or combinations thereof, but do not preclude thepresence or addition of one or more other features, numbers, operations,members, elements, and/or combinations thereof.

Unless otherwise defined, all terms including technical and scientificterms used herein have the same meaning as commonly understood by one ofordinary skill in the art to which examples belong. It will be furtherunderstood that terms, such as those defined in commonly-useddictionaries, should be interpreted as having a meaning that isconsistent with their meaning in the context of the relevant art andwill not be interpreted in an idealized or overly formal sense unlessexpressly so defined herein.

When describing the examples with reference to the accompanyingdrawings, like reference numerals refer to like constituent elements anda repeated description related thereto will be omitted. When it isdetermined detailed description related to a related known function orconfiguration may make the purpose of the examples unnecessarilyambiguous in describing the examples, the detailed description will beomitted here.

The features of the examples described herein may be combined in variousways as will be apparent after an understanding of the disclosure ofthis application. Further, although the examples described herein have avariety of configurations, other configurations are possible as will beapparent after an understanding of the disclosure of this application.

The following description provides example methods and apparatuses tocontrol a velocity of a vehicle. In the following description, a vehiclemay be an automobile such as a car, a sport utility vehicle, or a truck.Additionally, a vehicle may be a motorcycle. As another example, avehicle may be a drone. However, a vehicle is not limited to theforegoing examples, and other types of vehicles are possible.

FIG. 1 is a flowchart illustrating a vehicle velocity control method,according to an embodiment.

Referring to FIG. 1, in operation 110, a vehicle velocity controlapparatus extracts an end point of a road region from an input image.The vehicle velocity control apparatus acquires an input image withrespect to an outside of a vehicle. For example, the vehicle velocitycontrol apparatus acquires an input image with respect to a front viewfrom the vehicle. The vehicle velocity control apparatus directlycaptures the input image using a camera, or receives the input imagefrom an external camera module.

Herein, the road region is a region corresponding to a road in the inputimage. The road region includes a driving lane region corresponding to adriving lane on which the vehicle including the vehicle velocity controlapparatus is currently travelling.

Herein, the end point of the road region is a point at a farthestdistance from a side of the vehicle in the input image. For example, theend point of the road region corresponds to a position at a farthestdistance on a road from the vehicle, the position being identifiable bythe vehicle velocity control apparatus. A process of determining an endpoint of a road region will be described with reference to FIGS. 2through 5.

In operation 120, the vehicle velocity control apparatus measures avisibility distance between an end point location corresponding to theend point and a location of the vehicle. In a case in which the inputimage is a stereoscopic image, the vehicle velocity control apparatusestimates the visibility distance from the input image. An example ofestimating a visibility distance using an input image will be describedwith reference to FIGS. 6 and 7. In another example, the vehiclevelocity control apparatus estimates the visibility distance through aseparate sensor. For example, the vehicle velocity control apparatusdetects the visibility distance using a light imaging, detection, andranging (LiDAR) sensor (refer to FIG. 8) and a radio detection andranging (radar) sensor.

Hereinafter, the visibility distance is a maximum distance that isrecognizable on a road by the vehicle velocity control apparatus. Theend point location corresponding to the end point is an actual physicallocation indicated by the end point extracted from the input image.

In operation 130, the vehicle velocity control apparatus controls avelocity of the vehicle based on the measured visibility distance. Thevehicle velocity control apparatus determines a stopping distance basedon the visibility distance, and determines a maximum velocity of thevehicle based on the determined stopping distance. For example, thevehicle velocity control apparatus adjusts the velocity of the vehiclewithin a range below the maximum velocity. The velocity of the vehicleis a velocity with respect to a longitudinal direction of the vehicle.

In case in which there is no obstacle ahead on the road, the vehiclevelocity control apparatus controls the velocity of the vehicle based onthe maximum distance that the vehicle is guaranteed to travel. Thevehicle velocity control apparatus assumes a worst situation that thereis a dangerous object on the road, immediately beyond the visibilitydistance. For example, it is assumed that an obstacle is present at afarthest point on the road, the point being identifiable by the vehiclevelocity control apparatus. Thus, the vehicle velocity control apparatussafely brakes the vehicle even when an obstacle or object, for example,another vehicle, a person, or an animal, that was located outside of avisible range at a predetermined point of view suddenly appears in thevisible range.

The vehicle velocity control apparatus measures the visibility distancewithin which the autonomous vehicle may sense a dangerous object, anddecreases the velocity of the vehicle based on the measured visibilitydistance, thereby ensuring a sufficient braking distance with respect toa potential risk, even in a situation in which an extremely restricteddistance is measurable through a sensor in an actual drivingenvironment, for example, a sharply curved road with one side obstructedby a predetermined terrain such as a mountain, or a steep hill.

FIGS. 2 through 5 illustrate segmenting an input image into regions,according to embodiments. FIGS. 2 and 3 illustrate examples in whichinput images acquired by a vehicle velocity control apparatus correspondto straight roads. FIGS. 4 and 5 illustrate examples in which inputimages acquired by the vehicle velocity control apparatus correspond tocurved roads.

The vehicle velocity control apparatus maintains a velocity of a vehiclethat guarantees a stopping distance at all times for safe driving. Asshown in FIGS. 2 and 4, in a case in which the vehicle velocity controlapparatus acquires an input image 200, 400 at a predetermined point ofview, the vehicle velocity control apparatus determines a distanceobtainable at the point of view at which the input image is acquired.For example, the vehicle velocity control apparatus extracts an endpoint 211, 311, 411, 511 of a road identifiable through the respectiveinput image 200, 400.

The vehicle velocity control apparatus segments the input image 200, 400into regions to extract the end point 211, 311, 411, 511 of the road. Animage representing the regions acquired by segmenting the respectiveinput image 200, 400 is referred to as a segmented region image 300,500. The vehicle velocity control apparatus segments the input imageinto a road region 310, 510, a vehicle region 320, a person region 330,an object region 340, 540, and a background region 350, 550. The roadregion 310, 510 is a region indicating a road on which the vehicle is totravel, the vehicle region 320 is a region indicating another vehiclelocated on the road, the person region 330 is a region indicating aperson shown in the input image, the object region 340, 540 is a regionindicating an object excluding a person, for example, a tree or abuilding, and the background region 350, 550 is a region indicating abackground excluding objects, for example, the sky. However, operationsof segmenting the input images into regions not limited to the examplesprovided herein, and may vary according to design objectives orrequirements.

The vehicle velocity control apparatus segments the input image 200, 400into the regions using a classifier model trained to output a trainingoutput from a training image. The classifier model is, for example, aconvolutional neural network (CNN). The training image is, for example,a color image, and the training output is a segmented region image ofthe training input. For example, the training output is a segmentedregion image acquired by manually designating properties, for example, avehicle, a person, an object, and a background, corresponding torespective pixels of the training image and segmenting the trainingimage based on the designated properties.

The vehicle velocity control apparatus extracts the end point 311, 511of the road region 310, 510 from the segmented region image 300, 500.The vehicle velocity control apparatus identifies the road region 310,510 from the input image 200, 400. The vehicle velocity controlapparatus extracts, as the end point 311, 511, a pixel at a farthestdistance from a side of the vehicle in the input image 200, 400, amongpixels included in the road region 310, 510. However, the operation ofextracting the end point 311, 511 is not limited to the examplesprovided herein. For example, a portion positioned at an uppermost sideof the input image in the road region may correspond to the end point311, 511.

Further, the vehicle velocity control apparatus identifies lane linesfrom the input image 200, 400. The lane lines are lines to distinguishbetween lanes. The vehicle velocity control apparatus extracts a drivinglane region from the road region 310, 510 based on the lane lines. Thedriving lane region is a region corresponding to a driving lane, and thedriving lane is a lane on which the vehicle including the vehiclevelocity control apparatus is currently travelling. The vehicle velocitycontrol apparatus extracts the end point 211, 311, 411, 511 of theextracted driving lane region. For example, the vehicle velocity controlapparatus extracts, as the end point 211, 311, 411, 511, a pixel at afarthest distance from a side of the vehicle in the input image 200,400, among pixels included in the driving lane region.

FIG. 6 illustrates calculating a pixel disparity map to measure avisibility distance, according to an embodiment.

With respect to the example of FIG. 6, in a case in which an input imageis a stereoscopic image, a vehicle velocity control apparatus estimatesa visibility distance from a vehicle to an end point locationcorresponding to an end point using a pixel disparity. In a case ofusing the pixel disparity, the vehicle velocity control apparatusestimates the visibility distance without using a separate sensor, forexample, a LiDAR sensor or a radar sensor, for measuring an actualdistance from the vehicle to the end point location.

Herein, the stereoscopic input image is a pair of images that representthe same scene. For example, as illustrated in FIG. 6, the stereoscopicinput image includes a first image 610 and a second image 620. The firstimage 610 is one of a left image and a right image, and the second image620 is the other one of the left image and the right image. The vehiclevelocity control apparatus acquires the first image 610 included in theinput image using a first camera, and acquires the second image 620included in the input image using a second camera spaced apart from thefirst camera.

Herein, the pixel disparity is a pixel distance between a predeterminedpixel in the first image 610 and a corresponding pixel in the secondimage 620. A pixel disparity calculated with respect to a predeterminedpixel in the first image 610 and the second image 620 is used tocalculate a distance to a location corresponding to the pixel. Anexample of the pixel disparity will be described with reference to FIG.7.

The vehicle velocity control apparatus determines a pixel disparitycorresponding to an end point of one of the first image 610 and thesecond image 620. The vehicle velocity control apparatus generates apixel disparity map 630 to determine the pixel disparity. For example,the vehicle velocity control apparatus generates the pixel disparity map630 from the first image 610 and the second image 620, and determinesthe pixel disparity corresponding to the end point based on thegenerated pixel disparity map 630. For example, the vehicle velocitycontrol apparatus extracts the pixel disparity map 630 from the firstimage 610 and the second image 620 using a pixel disparity model. Thepixel disparity model is a neural network 640 trained to output atraining disparity map from a training image. The training disparity mapis a set of pixel disparities designated for respective pixels of thetraining image. The vehicle velocity control apparatus selects a pixeldisparity corresponding to the end point of one of the first image 610and the second image 620 in the pixel disparity map 630.

In another example, instead of calculating the pixel disparity map 630,the vehicle velocity control apparatus extracts the end point of thefirst image 610, estimates a corresponding end point in the second image620, and calculates a pixel disparity between the two end points. Thevehicle velocity control apparatus determines the end point of the firstimage 610 from a road region of the first image 610, and estimates apixel corresponding to the end point of the first image 610 from thesecond image 620.

The vehicle velocity control apparatus estimates the pixel correspondingto the end point of the first image 610 in the second image 620 based onan image feature. The image feature is, for example, a scale-invariantfeature transform (SIFT) feature. The vehicle velocity control apparatusextracts an image feature from the first image 610 and the second image620 using an image model, for example, a neural network trained tooutput an SIFT feature from an image, and estimates a center pixel of aportion having an image feature similar to that of a portion including apixel corresponding to the end point in the first image 610 as the pixelcorresponding to the end point of the first image 610. The vehiclevelocity control apparatus determines the estimated pixel to be the endpoint of the second image 620.

FIG. 7 illustrates measuring a visibility distance using a pixeldisparity map, according to an embodiment.

Referring to FIG. 7, a vehicle velocity control apparatus generates apixel disparity map 730 using the pixel disparity model described withreference to FIG. 6, for example, the neural network 640. The vehiclevelocity control apparatus determines a pixel disparity 731corresponding to an end point from the pixel disparity map 730, andestimates a visibility distance to an end point location based on thepixel disparity 731 corresponding to the end point. As shown in FIG. 7,a pixel disparity 790 indicates a pixel distance between a predeterminedpixel 711 in a first image 710 and a corresponding pixel 721 in a secondimage 720.

The pixel disparity map 730 is a map having intensities corresponding topixel disparities corresponding to pixels of each of the first image 710and the second image 720. In the pixel disparity map 730, a pixeldisparity increases as a distance between a point and a location of avehicle which is a criterion decreases, and the pixel disparitydecreases as the distance between the point and the location of thevehicle increases. In the pixel disparity map 730 of FIG. 7, a pointrelatively close to the vehicle has a relatively great pixel disparityand thus is expressed relatively bright, and a point relatively far fromthe vehicle has a small pixel disparity and thus is expressed relativelydark. However, the pixel disparity map 730 of FIG. 7 is provided as anexample for better understanding. Examples are not limited thereto. Eachpoint of the pixel disparity map 730 may be expressed relatively brightas it is at a relatively far distance from the vehicle, and may beexpressed relatively dark as it is at a relatively close distance fromthe vehicle.

The vehicle velocity control apparatus measures the visibility distancebased on the pixel disparity 731 corresponding to the end point. Thevehicle velocity control apparatus measures the visibility distancefurther based on a baseline distance between a first camera and a secondcamera and a focal length of the first camera and the second camera. Forexample, the vehicle velocity control apparatus measures the visibilitydistance from the pixel disparity 731 corresponding to the end pointbased on Equation 1.

$\begin{matrix}{{depth} = \frac{B \cdot f}{disparity}} & \lbrack {{Equation}\mspace{14mu} 1} \rbrack\end{matrix}$

In Equation 1, depth is a depth from the vehicle including the vehiclevelocity control apparatus to the end point location, which is thevisibility distance. B is the baseline distance between the first cameraand the second camera. f is the focal length of the first camera and thesecond camera. The first camera and the second camera have the samecharacteristics. disparity denotes the pixel disparity 731 correspondingto the end point. depth and B are actual distance units, which are, forexample, one of meter (m), centimeter (cm), and millimeter (mm). f anddisparity are expressed in pixel units. Although it is assumed thatdepth and B are the same in units, and f and disparity are the same inunits in Equation 1, unit constants may be incorporated in Equation 1 ina case in which different units are used.

Although it is assumed that a single end point is extracted from aninput image in FIGS. 1 through 7, the vehicle velocity control apparatusmay also extract multiple end points. For example, in a case in whichpoints farthest from a side of the vehicle, for example, lowermostpixels of the input image, in the road region of the input image havethe same pixel distance, the vehicle velocity control apparatusdetermines multiple end points. Furthermore, in a case in which theinput image is a stereoscopic image, the vehicle velocity controlapparatus determines multiple end points from a first image, anddetermines multiple end points from a second image. The vehicle velocitycontrol apparatus calculates disparities between the end points of thefirst image and the end points of the second image, respectively. Thevehicle velocity control apparatus determines a disparity statisticalvalue of the calculated disparities to be the pixel disparity. Thedisparity statistical value is a statistical value with respect to thedisparities, for example, a mean value or a median value of thedisparities.

FIG. 8 illustrates measuring a distance using a LiDAR sensor, accordingto an embodiment.

Referring to FIG. 8, a vehicle velocity control apparatus measures avisibility distance from a vehicle 801 to an end point location througha separate sensor. For example, the vehicle velocity control apparatusgenerates a vicinity distance map with respect to a vicinity of thevehicle 801 using a LiDAR sensor. The LiDAR sensor is a sensor thatobtains a vicinity distance map in real time by radiating multiple laserbeams toward the vicinity, for example, a front side, at a predeterminedangle, and analyzing a time of flight of a reflected laser beam. Thevicinity distance map is represented as a three-dimensional (3D) depthimage. As shown in FIG. 8, the vehicle velocity control apparatusobtains a vicinity distance map by radiating laser beams toward thevicinity of the vehicle 801.

The vicinity distance map represents a distance from the vehicle 801 andan object 820 that exists in the vicinity of the vehicle 801. Further,the vicinity distance map also represents a distance to each location ona road 810. However, because the vicinity distance map, which isobtained using the LiDAR sensor, is obtainable based on reflection ofthe laser beams radiated toward the object 820, the vicinity distancemap does not include information related to a region 850 behind theobject 820 from the vehicle 801.

The vehicle velocity control apparatus calibrates the vicinity distancemap to the input image. The vehicle velocity control apparatus segmentsat least a portion of the vicinity distance map, and matches thesegmented distance map to the input image. The vehicle velocity controlapparatus maps each point of the segmented distance map to acorresponding pixel in the input image.

The vehicle velocity control apparatus selects a distance correspondingto the end point of the input image as the visibility distance, from thevicinity distance map.

FIG. 9 illustrates a stopping distance, according to an embodiment.

A vehicle velocity control apparatus determines a stopping distance fora vehicle based on a visibility distance. The vehicle velocity controlapparatus determines the visibility distance to be the stopping distancefor the vehicle. In another example, the vehicle velocity controlapparatus sets the stopping distance in proportion to the visibilitydistance. Thus, the vehicle velocity control apparatus sets a maximumdistance identifiable through an input image as the stopping distance.However, methods of determining and setting a stopping distance are notlimited to the foregoing examples. The vehicle velocity controlapparatus adjusts the determined stopping distance based on thevisibility distance, in response to reception of a user input. The userinput is an input received from a user, and includes anoperation/instruction to set the stopping distance. For example, thevehicle velocity control apparatus sets the stopping distance to beshorter than the visibility distance in response to the user input,thereby enabling the vehicle to travel more safely. In another example,the vehicle velocity control apparatus sets the stopping distance to belonger than the visibility distance in response to the user input,thereby enabling the vehicle to travel faster.

The vehicle velocity control apparatus calculates a maximum velocity ofthe vehicle based on the stopping distance. More specifically, thevehicle velocity control apparatus calculates the maximum velocity fromthe stopping distance based on maximum velocity information 900. Themaximum velocity information 900 is information that defines a reactiondistance, a braking distance, and a stopping distance required withrespect to a predetermined velocity. The example maximum velocityinformation 900 of FIG. 9 is information provided in South Korea.

For example, the maximum velocity information 900 is implemented in aform of data of a lookup table. The vehicle velocity control apparatuscalculates a maximum velocity corresponding to a current stoppingdistance from the maximum velocity information 900. FIG. 9 also showsreaction distances. A reaction distance is a distance quantified withrespect to a time it takes for a user to perceive an object ahead andrespond to perceiving the object. The vehicle velocity control apparatususes only a braking distance as the stopping distance. Thus, the vehiclevelocity control apparatus excludes the reaction distance with respectto the vehicle, and determines the maximum velocity of the vehicle basedon the braking distance.

Further, the vehicle velocity control apparatus adjusts the velocity ofthe vehicle to be less than or equal to the maximum velocity. Inresponse to another no object being detected on the road region, thevehicle velocity control apparatus adjusts the velocity of the vehicleto be the maximum velocity. Thus, the vehicle velocity control apparatusadjusts the velocity of the vehicle based on a distance obtainablewithin a current visible range, thereby performing safe driving even ina situation in which an object, such as another vehicle, is absentahead.

In another example, the vehicle velocity control apparatus sets a dangerlevel in response to a user input. The vehicle velocity controlapparatus adjusts either one of the stopping distance and the maximumvelocity based on the set danger level. For example, as the danger levelis set to be relatively high, it implies that the user wants to drive ata relatively high risk. Thus, the vehicle velocity control apparatusenables the vehicle to travel at a fast velocity. Conversely, as thedanger level is set to be relatively low, it implies that the user wantsto drive safely. Thus, the vehicle velocity control apparatus enablesthe vehicle to travel at a slow velocity. Accordingly, the vehiclevelocity control apparatus defines the stopping distance or the brakingdistance based on a level of safety assurance, and calculates themaximum velocity that maintains the defined braking distance.

In another example, the vehicle velocity control apparatus obtains themaximum velocity information 900 corresponding to a location of thevehicle based on the location of the vehicle. For example, a nation, aregion, and a state in which the vehicle is located have differentregulations regarding a stopping distance. The vehicle velocity controlapparatus flexibly obtains the maximum velocity information 900 based onthe current location of the vehicle. The vehicle velocity controlapparatus receives the maximum velocity information 900 from an externaldevice through communication, or retrieves the maximum velocityinformation 900 corresponding to the current location from an internaldatabase. The vehicle velocity control apparatus calculates the maximumvelocity of the vehicle from the stopping distance based on the maximumvelocity information 900 corresponding to the current location.

For example, the U.S. state of California provides a formula related toa braking distance, a vehicle length, and a velocity as maximum velocityinformation. The vehicle velocity control apparatus calculates themaximum velocity based on the stopping distance and the length of thevehicle. The braking distance corresponds to a product of the length ofthe vehicle and the velocity.

FIGS. 10 and 11 illustrate visibility distances 1011 and 1111 on curvedroads 1002 and 1102 with obstacles, according to an embodiment.

Referring to FIG. 11, in a case in which it is uncertain whether adangerous object 1120, for example, an object presenting a risk ofcollision, is present behind an obstacle 1130, for example, a wall or acliff, due to the obstacle 1130 being located on an inner side of acurve on the curved road 1002, 1102, a vehicle velocity controlapparatus assumes that the dangerous object 1120 is present at an endpoint location of the road.

Referring to FIGS. 10 and 11, similar to the description provided withreference to FIGS. 1 through 9, the vehicle velocity control apparatusdetermines a visibility distance 1011, 1111 to the end point location ofthe road based on an input image 1000.

However, an end point of the road is not limited to the examples shown.The vehicle velocity control apparatus may also determine an end pointbased on a driving lane of the road.

Still referring to FIGS. 10 and 11, the vehicle velocity controlapparatus identifies a road region and a center line 1119 on the roadregion from the input image 1000. The vehicle velocity control apparatusextracts, as an end point, a pixel at a farthest distance from a side ofa vehicle 1101 in the input image 1000, among pixels included on thecenter line 1119. In this example, the vehicle velocity controlapparatus determines a distance to an end point location on a drivinglane 1110 of the road to be the visibility distance 1012, 1112.

Furthermore, the vehicle velocity control apparatus determines anobtainable stopping distance based on the visibility distance and a lineshape of a driving road of the vehicle 1101. In a case of the curvedroad of FIG. 10, the vehicle velocity control apparatus determines astopping distance longer than the visibility distance 1111, 1112 to theend point location based on a curvature of the road. The vehiclevelocity control apparatus calculates a maximum velocity of the vehicle1101 based on the stopping distance.

FIGS. 12 and 13 illustrate visibility distances 1211 and 1311 on slopingroads 1210 and 1310, according to embodiments.

Referring to FIGS. 12 and 13, in a case in which it is uncertain whetheran obstacle is present over a hill on the sloping road 1210, 1310, avehicle velocity control apparatus assumes that a dangerous object 1320is present at an end point location of the road 1210, 1310.

In a case in which the road 1210, 1310 is an uphill road, there may bepixels at the same height with respect to a road region in an inputimage 1200. In this example, the vehicle velocity control apparatusdetermines end points with respect to the road region. In response tothe end points being extracted, the vehicle velocity control apparatusdetermines a statistical value of distances between respective end pointlocations corresponding to the end points and a location of the vehicleto be the visibility distance 1211, 1311. For example, the vehiclevelocity control apparatus determines a mean value or a median value ofthe distances between the end point locations and the location of thevehicle to be the visibility distance 1211, 1311. Thus, the vehiclevelocity control apparatus enables a vehicle 1301 to travel at a safevelocity even in a case in which a dangerous object is absent on thehill.

FIG. 14 illustrates a visibility distance 1411 on a curved road 1410without an obstacle, according to an embodiment.

A vehicle velocity control apparatus determines a distance to an endpoint of the curved road 1410 on which an obstacle is absent to be thevisibility distance 1411. Thus, the vehicle velocity control apparatusquickly determines a velocity of a vehicle 1401 on a flat terrain 1441on which an obstacle is absent, unlike a terrain on which an obstacle ispresent.

FIGS. 15 and 16 illustrate a visibility distance with respect to weatherconditions, according to an embodiment.

Referring to FIG. 15, a vehicle velocity control apparatus enables avehicle to travel safely based on a weather condition. In a bad weathercondition, a visible range of the vehicle is restricted. For example,FIG. 15 is an input image 1500 acquired in a situation in which avisible range is restricted by fog 1550.

The vehicle velocity control apparatus excludes an invisible region 1650from the input image 1500. Referring to FIG. 16, the vehicle velocitycontrol apparatus identifies a road region 1610 from the input image1500 from which the invisible region 1650 is excluded. For example, asshown in FIG. 16, the vehicle velocity control apparatus generates aregion image 1600 excluding the invisible region 1650 from the inputimage 1500. The vehicle velocity control apparatus determines an endpoint 1611 based on the road region 1610 identified from the regionimage 1600 excluding the invisible region 1650.

Thus, the vehicle velocity control apparatus determines a maximumdistance within which a visible range is obtained to be a visibilitydistance, thereby preventing a potential risk of collision, for example,a sudden appearance of an object that was invisible due to fog, in asituation in which a visible range decreases due to a weather condition.

FIG. 17 illustrates a visibility distance 1711 on a sloping, uphill road1710, according to an embodiment.

Referring to FIG. 17, in a case in which a vehicle 1701 enters theuphill road 1710, a vehicle velocity control apparatus determines thevisibility distance 1711 based on a visible range obtainable withrespect to the uphill road 1710. A visible range of the vehicle velocitycontrol apparatus is restricted by a slope of the uphill road 1710.Thus, the visibility distance 1711 decreases, and the vehicle velocitycontrol apparatus reduces a velocity of the vehicle 1701 based on thedecreasing visibility distance 1711.

FIGS. 18 and 19 illustrate a visibility distance when entering tunnels,according to an embodiment.

In a case in which a vehicle enters a shaded area, for example, atunnel, a vehicle velocity control apparatus determines a visibilitydistance based on a visible range obtainable with respect to the shadedarea.

Referring to FIG. 18, for example, the vehicle velocity controlapparatus acquires an input image 1800 before the vehicle enters atunnel. In the daytime, lighting is dim in a tunnel. Thus, an invisibleregion 1850 appears in the input image 1800. As shown in FIG. 10, thevehicle velocity control apparatus generates a region image 1900 bysegmenting the input image 1800 into regions. The vehicle velocitycontrol apparatus excludes an invisible region 1950 from a road region1910 in the region image 1900. The vehicle velocity control apparatusdetermines the visibility distance 1911 based on the road region 1910from which the invisible region 1950 is excluded.

Thus, the vehicle velocity control apparatus determines a velocity ofthe vehicle based on the visibility distance 1911, thereby preventing arisk of collision even in a situation that there may be a potentialdangerous object due to the invisible region 1850, 1950 before thevehicle enters the shaded area.

FIGS. 20 through 22 are block diagrams illustrating vehicle velocitycontrol apparatuses 2000, 2100 and 2200, according to embodiments.

Referring to FIG. 20, the vehicle velocity control apparatus 2000includes a sensor 2010 and a processor 2020. The sensor 2010 acquires aninput image. For example, the sensor 2010 is an image sensor thatcaptures the input image.

The processor 2020 extracts an end point of a road region from the inputimage, determines a visibility distance between an end point locationcorresponding to the end point and a location of a vehicle, and controlsa velocity of the vehicle based on the measured visibility distance.However, the operation of the processor 2020 is not limited to theforegoing operations, and the processor 2020 may also perform theoperations described with reference to FIGS. 1 through 19.

In the vehicle velocity control apparatus 2100 of FIG. 21, the sensor2010 includes a camera 2111 including a first camera 2111 a and a secondcamera 2111 b that are spaced apart from each other along a baseline,and acquires a stereoscopic image as the input image using the firstcamera 2111 a and the second camera 2111 b. Additionally, the sensor2010 of the vehicle velocity control apparatus 2100 further includes adistance sensor.

The camera 2111 captures an image of an outside of a vehicle asdescribed above. The camera 2111 is attached to the vehicle toward afront side of the vehicle to capture an image with respect to a frontview from the vehicle. For example, the camera 2111 captures astereoscopic image. However, the camera 2111 is not limited to thedisclosed example. The camera 2111 may also include an optical sensorthat captures an image based on an infrared ray and a visible ray, andan ultrasonic sensor that captures an ultrasonic image based on anultrasonic wave. The camera 2111 may be implemented as various types ofsensors that continually capture a predetermined visible range.

The distance sensor is a sensor that measures a distance with respect toa vicinity of the vehicle. The distance sensor measures a distance withrespect to a road or an object in the vicinity of the vehicle. Forexample, as shown in FIG. 21, the distance sensor includes a LiDARsensor 2112 and a radar sensor 2113. However, the type of the distancesensor is not limited to the foregoing examples.

As described with reference to FIG. 8, the LiDAR sensor 2112 is a sensorthat obtains a vicinity distance map in real time by radiating multiplelaser beams toward a vicinity, for example, a front side, at apredetermined angle and analyzing a time of flight of a reflected laserbeam. The radar sensor 2113 is a sensor that obtains a vicinity distancemap in real time by radiating electromagnetic waves at a predeterminedangle and analyzing a reflected electromagnetic wave.

Still referring to FIG. 21, a storage 2130 stores program instructionsfor controlling the processor 2020 to perform the operations describedwith reference to FIGS. 1 through 19. Further, the storage 2130 stores aclassifier model configured to segment an input image, a pixel disparitymodel configured to estimate a pixel disparity, and an image modelconfigured to estimate corresponding points in a stereoscopic image. Thestorage 2130 updates and stores the classifier, pixel disparity, andimage models. Further, the storage 2130 temporarily or semi-permanentlystores a variety of information required to perform a vehicle velocitycontrol method, for example, an input image, a pixel disparity map,maximum distance information, and a vicinity distance map.

In the embodiment of FIG. 22, the vehicle velocity control apparatus2200 is implemented as an apparatus including a road region recognizer2210, a visibility distance measurer 2220, a stopping distancedeterminer 2230, and a velocity controller 2240.

The road region recognizer 2210 is a module that recognizes a roadregion from an input image, and includes at least one processor. Forexample, the road region recognizer 2210 segments an input image intoregions based on properties, for example, a road, an object, and abackground, and selects a road region from the regions.

The visibility distance measurer 2220 is a module that measures avisibility distance to an end point location corresponding to an endpoint of a road region. The visibility distance measurer 2220 includesat least one processor that estimates the visibility distance to the endpoint location. In another example, the visibility distance measurer2220 includes a sensor that measures an actual visibility distance tothe end point location.

The stopping distance determiner 2230 is a module that determines astopping distance based on the visibility distance. The stoppingdistance determiner 2230 includes at least one processor that sets thevisibility distance as the stopping distance. Further, the stoppingdistance determiner 2230 adjusts the stopping distance in response to auser input.

The velocity controller 2240 is a module that controls a velocity of thevehicle. The velocity controller 2240 includes at least one processorthat determines the velocity of the vehicle based on maximum velocityinformation. Further, the velocity controller 2240 enables the vehicleto travel at the determined velocity.

The processors included in the road region recognizer 2210, thevisibility distance measurer 2220, the stopping distance determiner2230, and the velocity controller 2240 may be implemented as a singleprocessor or a plurality of processors.

The sensor 2010, the processor 2020, the camera 2111, the LiDAR sensor2112, the radar sensor 2113, the storage 2130, the road regionrecognizer 2210, the visibility distance measurer 2220, the stoppingdistance determiner 2230, and the velocity controller 2240 in FIGS.20-22 that perform the operations described in this application areimplemented by hardware components configured to perform the operationsdescribed in this application that are performed by the hardwarecomponents. Examples of hardware components that may be used to performthe operations described in this application where appropriate includecontrollers, sensors, generators, drivers, memories, comparators,arithmetic logic units, adders, subtractors, multipliers, dividers,integrators, and any other electronic components configured to performthe operations described in this application. In other examples, one ormore of the hardware components that perform the operations described inthis application are implemented by computing hardware, for example, byone or more processors or computers. A processor or computer may beimplemented by one or more processing elements, such as an array oflogic gates, a controller and an arithmetic logic unit, a digital signalprocessor, a microcomputer, a programmable logic controller, afield-programmable gate array, a programmable logic array, amicroprocessor, or any other device or combination of devices that isconfigured to respond to and execute instructions in a defined manner toachieve a desired result. In one example, a processor or computerincludes, or is connected to, one or more memories storing instructionsor software that are executed by the processor or computer. Hardwarecomponents implemented by a processor or computer may executeinstructions or software, such as an operating system (OS) and one ormore software applications that run on the OS, to perform the operationsdescribed in this application. The hardware components may also access,manipulate, process, create, and store data in response to execution ofthe instructions or software. For simplicity, the singular term“processor” or “computer” may be used in the description of the examplesdescribed in this application, but in other examples multiple processorsor computers may be used, or a processor or computer may includemultiple processing elements, or multiple types of processing elements,or both. For example, a single hardware component or two or morehardware components may be implemented by a single processor, or two ormore processors, or a processor and a controller. One or more hardwarecomponents may be implemented by one or more processors, or a processorand a controller, and one or more other hardware components may beimplemented by one or more other processors, or another processor andanother controller. One or more processors, or a processor and acontroller, may implement a single hardware component, or two or morehardware components. A hardware component may have any one or more ofdifferent processing configurations, examples of which include a singleprocessor, independent processors, parallel processors,single-instruction single-data (SISD) multiprocessing,single-instruction multiple-data (SIMD) multiprocessing,multiple-instruction single-data (MISD) multiprocessing, andmultiple-instruction multiple-data (MIMD) multiprocessing.

The methods illustrated in FIGS. 1-19 that perform the operationsdescribed in this application are performed by computing hardware, forexample, by one or more processors or computers, implemented asdescribed above executing instructions or software to perform theoperations described in this application that are performed by themethods. For example, a single operation or two or more operations maybe performed by a single processor, or two or more processors, or aprocessor and a controller. One or more operations may be performed byone or more processors, or a processor and a controller, and one or moreother operations may be performed by one or more other processors, oranother processor and another controller. One or more processors, or aprocessor and a controller, may perform a single operation, or two ormore operations.

Instructions or software to control computing hardware, for example, oneor more processors or computers, to implement the hardware componentsand perform the methods as described above may be written as computerprograms, code segments, instructions or any combination thereof, forindividually or collectively instructing or configuring the one or moreprocessors or computers to operate as a machine or special-purposecomputer to perform the operations that are performed by the hardwarecomponents and the methods as described above. In one example, theinstructions or software include machine code that is directly executedby the one or more processors or computers, such as machine codeproduced by a compiler. In another example, the instructions or softwareincludes higher-level code that is executed by the one or moreprocessors or computer using an interpreter. The instructions orsoftware may be written using any programming language based on theblock diagrams and the flow charts illustrated in the drawings and thecorresponding descriptions in the specification, which disclosealgorithms for performing the operations that are performed by thehardware components and the methods as described above.

The instructions or software to control computing hardware, for example,one or more processors or computers, to implement the hardwarecomponents and perform the methods as described above, and anyassociated data, data files, and data structures, may be recorded,stored, or fixed in or on one or more non-transitory computer-readablestorage media. Examples of a non-transitory computer-readable storagemedium include read-only memory (ROM), random-access memory (RAM), flashmemory, CD-ROMs, CD-Rs, CD+Rs, CD-RWs, CD+RWs, DVD-ROMs, DVD-Rs, DVD+Rs,DVD-RWs, DVD+RWs, DVD-RAMs, BD-ROMs, BD-Rs, BD-R LTHs, BD-REs, magnetictapes, floppy disks, magneto-optical data storage devices, optical datastorage devices, hard disks, solid-state disks, and any other devicethat is configured to store the instructions or software and anyassociated data, data files, and data structures in a non-transitorymanner and provide the instructions or software and any associated data,data files, and data structures to one or more processors or computersso that the one or more processors or computers can execute theinstructions. In one example, the instructions or software and anyassociated data, data files, and data structures are distributed overnetwork-coupled computer systems so that the instructions and softwareand any associated data, data files, and data structures are stored,accessed, and executed in a distributed fashion by the one or moreprocessors or computers.

While this disclosure includes specific examples, it will be apparentafter an understanding of the disclosure of this application thatvarious changes in form and details may be made in these exampleswithout departing from the spirit and scope of the claims and theirequivalents. The examples described herein are to be considered in adescriptive sense only, and not for purposes of limitation. Descriptionsof features or aspects in each example are to be considered as beingapplicable to similar features or aspects in other examples. Suitableresults may be achieved if the described techniques are performed in adifferent order, and/or if components in a described system,architecture, device, or circuit are combined in a different manner,and/or replaced or supplemented by other components or theirequivalents. Therefore, the scope of the disclosure is defined not bythe detailed description, but by the claims and their equivalents, andall variations within the scope of the claims and their equivalents areto be construed as being included in the disclosure.

What is claimed is:
 1. A method to control a velocity of a vehicle, themethod comprising: acquiring a first image of a road on which thevehicle travels using a first camera of the vehicle; acquiring a secondimage of the road on which the vehicle travels using a second camera ofthe vehicle; determining, from the first image, a first road region ofthe road on which the vehicle is traveling; determining, from the secondimage, a second road region of the road on which the vehicle istraveling; extracting a plurality of first end points of the first roadregion from the first image; extracting a plurality of second end pointsof the second road region from the second image; determining a pluralityof pixel disparities between the plurality of first end points and theplurality of second end points; measuring a visibility distance betweena position on the road corresponding to the plurality of first endpoints and the plurality of second end points, and a location of thevehicle, based on the plurality of pixel disparities; and controllingthe velocity of the vehicle based on the visibility distance.
 2. Themethod of claim 1, wherein the extracting of the plurality of first endpoints and the plurality of second end points comprises: identifyinglane lines from the first image and the second image, extracting adriving lane region from the first road region and the second roadregion based on the lane lines, and extracting, as the plurality offirst end points and the plurality of second end points, end points ofthe driving lane region.
 3. The method of claim 1, wherein theextracting of the plurality of first end points and the plurality ofsecond end points comprises: extracting, as the plurality of first endpoints and the plurality of second end points, pixels at farthestdistances from a side of the vehicle in the first image and the secondimage, among pixels included in the first road region and the secondroad region.
 4. The method of claim 1, wherein the extracting of theplurality of first end points and the plurality of second end pointscomprises: identifying a center line on the first road region and thesecond road region from the first image and the second image; andextracting, as the plurality of first end points and the plurality ofsecond end points, pixels at farthest distances from a side of thevehicle in the first image and the second image, among pixels includedin the center line.
 5. The method of claim 1, wherein the determining ofthe plurality of pixel disparities comprises: extracting a pixeldisparity map from the first image and the second image using a pixeldisparity model that is trained to output a training display map from atraining image, and selecting the plurality of pixel disparitiescorresponding to the plurality of first end points and the plurality ofsecond end points in the pixel disparity map.
 6. The method of claim 1,wherein the measuring of the visibility distance based on the pluralityof pixel disparities comprises measuring the visibility distance furtherbased on a baseline distance between the first camera and the secondcamera, and a focal length of the first camera and the second camera. 7.The method of claim 1, wherein the extracting the plurality of first endpoints and the plurality of second end points comprises: estimatingpixels corresponding to the plurality of first end points of the firstimage from the second image; and determining the pixels as the pluralityof second end points of the second image.
 8. The method of claim 1,wherein the measuring of the visibility distance comprises: generating avicinity distance map with respect to a vicinity of the vehicle using alight imaging, detection, and ranging (LiDAR) sensor; calibrating thevicinity distance map to the first image and the second image; andselecting a distance corresponding to the plurality of first end pointsand the plurality of second end points as the visibility distance, fromthe vicinity distance map.
 9. The method of claim 1, wherein thecontrolling of the velocity of the vehicle comprises: determining astopping distance for the vehicle based on the visibility distance;calculating a maximum velocity of the vehicle based on the stoppingdistance; and adjusting the velocity of the vehicle to be less than orequal to the maximum velocity.
 10. The method of claim 9, wherein thecalculating of the maximum velocity of the vehicle comprises calculatingthe maximum velocity of the vehicle further based on a length of thevehicle.
 11. The method of claim 9, further comprising: adjusting eitherone or both of the stopping distance and the maximum velocity inresponse to reception of a user input.
 12. The method of claim 9,wherein the calculating of the maximum velocity of the vehiclecomprises: obtaining maximum velocity information corresponding to thelocation of the vehicle based on the location of the vehicle; andcalculating the maximum velocity of the vehicle further based on themaximum velocity information.
 13. The method of claim 9, wherein theadjusting of the velocity of the vehicle comprises adjusting thevelocity of the vehicle to be the maximum velocity in response to noobject being detected.
 14. The method of claim 1, further comprising:determining a statistical value of distances between respective endpoint locations corresponding to the plurality of first end points andthe plurality of second end points and the location of the vehicle to bethe visibility distance.
 15. The method of claim 1, wherein thecontrolling of the velocity of the vehicle comprises: determining anobtainable stopping distance based on the visibility distance and a lineshape of the road, and calculating a maximum velocity of the vehiclebased on the obtainable stopping distance.
 16. The method of claim 1,wherein the controlling of the velocity of the vehicle comprises:excluding a reaction distance with respect to the vehicle; anddetermining a maximum velocity of the vehicle based on a brakingdistance.
 17. A non-transitory computer-readable storage medium storinginstructions that, when executed by a processor, cause the processor toperform the method of claim
 1. 18. An apparatus to control a velocity ofa vehicle, the apparatus comprising: a first camera configured toacquire a first image of a road on which the vehicle travels; a secondcamera configured to acquire a second image of the road on which thevehicle travels; and a processor configured to: determine, from thefirst image, a first mad region of the road on which the vehicle istraveling; determine, from the second image, a second road region of theroad on which the vehicle is traveling; extract a plurality of first endpoints of the first road region from the first image; extract aplurality of second end points of the second road region from the secondimage; determining a plurality of pixel disparities between theplurality of first end points and the plurality of second end points;measure a visibility distance between a position on the madcorresponding to the plurality of first end points and the plurality ofsecond end points, and a location of the vehicle, based on the pluralityof pixel disparities; and control the velocity of the vehicle based onthe visibility distance.
 19. The apparatus of claim 18, wherein theprocessor is configured to extract the plurality of first end points andthe plurality of second end points by determining a driving lane regionfrom the first mad region and the second road region and extracting, asthe plurality of first end points and the plurality of second endpoints, an end points of the driving lane region.
 20. The apparatus ofclaim 18, wherein the processor is configured to extract the pluralityof first end points and the plurality of second end points byextracting, as the plurality of first end points and the plurality ofsecond end points, pixels at farthest distances from a side of thevehicle in the first image and the second image, among pixels includedin the first road region and the second road region.